This invention relates to the use of spreading codes in CDMA systems for wireless communication. More particularly, the invention relates to methods for coding messages for transmission on the downlink, so as beneficially to use multiple transmitting antennas for improved reception in fading environments.
The quality of reception in wireless communication systems may suffer as a result of fluctuations in the propagation channel between the transmitting and receiving antennas. This phenomenon is referred to as xe2x80x9cfading.xe2x80x9d In theory, reception in fading environments can be improved by using multiple antennas at the transmitting or receiving end, or both, of the communication link. Multiple antennas can help by providing multiple, independent paths between the ends of the link. The existence of such independent paths is referred to as xe2x80x9cdiversity.xe2x80x9d
There has been recent interest in applying such diversity to boost the capacity and data rate of CDMA systems.
In regard to mobile telephone systems in general, and CDMA systems in particular, spatial as well as economic limitations make it more practical to install multiple antennas at the base station rather than the mobile stations. On the uplink of CDMA systems (i.e., from the mobile to the base station), multiple base-station antennas have in fact been advantageously used to improve data rates and reduce error probabilities. However, it has proven more difficult to attain the desired benefits of diversity in the downlink direction. Previously proposed schemes have tended to provide relatively little diversity gain (i.e., improved reception due to improvement in the statistical distribution of the instantaneous signal-to-noise ratio at the mobile), or they have called for the consumption of too many resources, or they have entailed substantial changes to existing CDMA standards.
Some of the limitations of these previously proposed schemes will be illustrated in the following example. In this example, we will describe, in simplified terms, the processing of data symbols at the baseband level, in accordance with CDMA procedures. We will focus on the modulation of spreading codes by the data symbols, in accordance with well-known procedures. We will not discuss the precise spreading codes to be used, nor will we discuss the gains or pulse shapes. Those skilled in the art will appreciate that these details, as well as methods for placing the coded signals onto carrier waves and transmitting them, are well known.
In our simplified example, there are only two users. We treat the sending of one respective real-valued, scalar data symbol to each user over a physical propagation channel that is free of multipath effects, so that it is adequately modeled by one fading (i.e., propagation) coefficient for each user.
Thus, with reference to FIG. 1, base station 10 is to transmit real-valued scalar data symbols b1 and b2 to users U1 (reference numeral 15.1) and U2 (reference numeral 15.2), respectively. There are provided two orthonormal spreading codes, denoted by vectors c1 and c2. In our simplified example, data symbol b1 multiplies code c1, and data symbol b2 multiplies code c2.
In typical CDMA communications, a single base-station antenna transmits the vector sum b1c1+b2c2, where the scalar elements of the vector sum are transmitted consecutively at the rate commonly known as the chip rate. Then the received baseband signal at U1 is given by r1=h1(b1c1+b2c2 )+n1, and similarly, at U2, r2=h2(b1c1+b2c2)+n2, where h1 and h2 are the respective fading (i.e., propagation) coefficients (with subscripts that relate to the respective users), and n1 and n2 are respective components of additive receiver noise.
Despreading of the received signal by each mobile station is represented mathematically as left-multiplication by the complex transpose of the respective spreading code belonging to that base station. After this operation, the respective received signals d1 and d2 are given by: d1=h1b1+xcexd1, d2=h2b2 +xcexd2, where xcexd1=c1xe2x80xa0n1, xcexd2=c2xe2x80xa0n2, and xe2x80x9cxe2x80xa0xe2x80x9d denotes conjugate transposition.
For effective recovery of the data symbols, it is advantageous for the mobile receiver to know the pertinent fading coefficient from, e.g., measurement of a pilot signal. It is also desirable, for this purpose, to have a relatively high channel gain (i.e., the absolute magnitude of the pertinent fading coefficient). This condition cannot be guaranteed, in general. Below, we describe an exemplary scheme for using diversity to increase the likelihood that the instantaneous signal-to-noise ratio will be high enough to support reliable communication. For simplicity, we assume that there are only two transmitting antennas, and that they are separated by a distance of several wavelengths, so that their respective paths to users are, to a substantial degree, statistically independent.
It should be noted in this regard that the fading coefficients are not fixed quantities, but instead are described probabilistically, in terms of appropriate statistical distributions. Here, we will present certain analytical results assuming that the fading coefficients are complex-Gaussian variables having Rayleigh-distributed amplitude and uniformly distributed phase. We also assume that the additive receiver noise is zero-mean complex-Gaussian.
Under these assumptions, the squared magnitude of the individual fading coefficient h1 or h2 has a chi-square distribution with two degrees of freedom, which arise from the squares of the respective real and imaginary parts of the fading coefficients. In general, the sum of squares of M independent, zero-mean, Gaussian random variables, each with unit variance, has the chi-square distribution with M degrees of freedom. If the squared magnitude of the effective fading coefficient is proportional to a chi-square random variable with 2M degrees of freedom, we say that the diversity is xe2x80x9cM-fold.xe2x80x9d Diversity is useful in the context of CDMA transmission because increased diversity results in a probability density for the signal-to-noise ratio that is more sharply peaked about its mean value. As a consequence, there is less likelihood that the signal-to-noise ratio will fall into the range of values so low that dependable communication is precluded.
Continuing our simplified model, suppose now that each antenna of a two-antenna array transmits the baseband signal             (              1                  2                    )        ⁢          xe2x80x83        ⁢          (                                    b            1                    ⁢                      xe2x80x83                    ⁢                      c            1                          +                              b            2                    ⁢                      xe2x80x83                    ⁢                      c            2                              )        ,
where the normalizing factor of   (      1          2        )
signifies that the total transmitted power is the same as for the single-antenna case. The signal dk received at the k""th mobile (k=1,2), after despreading, is given by       d    k    =                    (                  1                      2                          )            ⁢              xe2x80x83            ⁢              (                              h            1                          (              k              )                                +                      h            2                          (              k              )                                      )            ⁢              xe2x80x83            ⁢              b        k              +          v      .      
In this expression, h1(k) and h2(k) are the complex-Gaussian channel gains from antenna 1 and antenna 2, respectively, to user (i.e., mobile station) k, assuming, again, that there are no multipath effects. To simplify notation, we drop the subscript k (i.e., the user index) from the pre-despreading received noise terms n and the post-despreading noise terms xcexd. It should be noted that here, and in the following discussion, the subscripts of the fading coefficients relate to the respective antennas, and not to the respective users.
If the two antennas are widely separated, the respective fading coefficients are statistically independent, and therefore their sum   (      normalized    ⁢                  xe2x80x83            ⁢              xe2x80x83              ⁢    by    ⁢          xe2x80x83        ⁢    a    ⁢          xe2x80x83        ⁢    factor    ⁢          xe2x80x83        ⁢    of    ⁢          xe2x80x83        ⁢          1              2              )
has the same statistical distribution as either of them individually. As a consequence, little or no diversity gain is afforded by this scheme.
Next, with reference to FIG. 2, suppose that user 1 (denoted in the figure by reference numeral 20.1) and user 2 (denoted by reference numeral 20.2) are each assigned a respective orthogonal spreading code for each of the two antennas, so that there are four codes in all. (The antennas are respectively denoted in the figure by reference numerals 25.1 and 25.2.) Thus, the baseband signal transmitted on antenna m (m=1, 2) is given by             (              1                  2                    )        ⁢          xe2x80x83        ⁢          (                                    b            1                    ⁢                      xe2x80x83                    ⁢                      c            m1                          +                              b            2                    ⁢                      xe2x80x83                    ⁢                      c            m2                              )        ,
and the received signal rk (before despreading) at the k""th mobile is given by       r    k    =                    (                  1                      2                          )            ⁡              [                                            h              1                              (                k                )                                      ⁢                          xe2x80x83                        ⁢                          (                                                                    b                    1                                    ⁢                                      xe2x80x83                                    ⁢                                      c                    11                                                  +                                                      b                    2                                    ⁢                                      xe2x80x83                                    ⁢                                      c                    12                                                              )                                +                                    h              2                              (                k                )                                      ⁢                          xe2x80x83                        ⁢                          (                                                                    b                    1                                    ⁢                                      xe2x80x83                                    ⁢                                      c                    21                                                  +                                                      b                    2                                    ⁢                                      xe2x80x83                                    ⁢                                      c                    22                                                              )                                      ]              +          n      .      
User k separately despreads c1k and c2k, to get the effective received signals dk(1) and dk(2), which are given by:             d      1              (        k        )              =                            (                      1                          2                                )                ⁢                  xe2x80x83                ⁢                  h          1                      (            k            )                          ⁢                  xe2x80x83                ⁢                  b          k                    +                        c                      1            ⁢                          xe2x80x83                        ⁢            k                    xe2x80xa0                ⁢                  xe2x80x83                ⁢        n              ,      xe2x80x83    ⁢            d      k              (        2        )              =                            (                      1                          2                                )                ⁢                  xe2x80x83                ⁢                  h          2                      (            k            )                          ⁢                  xe2x80x83                ⁢                  b          k                    +                        c                      2            ⁢                          xe2x80x83                        ⁢            k                    xe2x80xa0                ⁢                  xe2x80x83                ⁢                  n          .                    
It should be noted that in these expressions, the symbols dk(1) and dk(2) are subscripted to indicate a respective user, and superscripted to indicate a respective spreading code. A notational convenience is introduced by defining             d      k        =          [                                                  d              k                              (                1                )                                                                                        d              k                              (                2                )                                                        ]        ,      xe2x80x83    ⁢            h              (        k        )              =          [                                                  h              1                              (                k                )                                                                                        h              1                              (                k                )                                                        ]        ,      xe2x80x83    ⁢            v      →        =                  [                                                                              c                                      1                    ⁢                                          xe2x80x83                                        ⁢                    k                                    xe2x80xa0                                ⁢                                  xe2x80x83                                ⁢                n                                                                                                          c                                      2                    ⁢                                          xe2x80x83                                        ⁢                    k                                    xe2x80xa0                                ⁢                                  xe2x80x83                                ⁢                n                                                    ]            .      
Then in matrix notation, the despread signals are represented by:       d    k    =                    (                  1                      2                          )            ⁢              xe2x80x83            ⁢              h                  (          k          )                    ⁢              xe2x80x83            ⁢              b        k              +                  v        →            .      
Diversity gain is achieved (for user k) when the 2xc3x971 matrix dk is multiplied on the left by hxe2x80xa0, obtaining             h      xe2x80xa0        ⁢          xe2x80x83        ⁢          d      k        =                    (                  1                      2                          )            ⁢              xe2x80x83            ⁢              (                                            "LeftBracketingBar"                              h                1                            "RightBracketingBar"                        2                    +                                    "LeftBracketingBar"                              h                2                            "RightBracketingBar"                        2                          )            ⁢              xe2x80x83            ⁢              b        k              +                  h        xe2x80xa0            ⁢              xe2x80x83            ⁢                        v          →                .            
The superscript (k) has been dropped from the preceding expression to simplify the notation.
It should be noted that the preceding mathematical expression was formulated with a particular normalization chosen for conciseness and simplicity. Those skilled in the art will appreciate that there are alternative normalizations having particular utility, such as those that make the additive noise variance equal to unity.
Because the statistical distribution of (h1|2+|h2|2) has a chi-square distribution for which 2M equals four degrees of freedom, a twofold diversity gain is achieved over the single-antenna case. In fact, this gain is achieved without requiring either user to decode the other user""s symbol.
However, this diversity gain is achieved only with a substantial penalty: there must be two spreading codes per user. More generally, if there are M transmitter antennas, then there must be M codes per user. If the total number of available codes is limited, then M times fewer simultaneous users can be supported than in the single-antenna case.
Thus, there remains a need for a scheme to achieve the full benefits of diversity when multiple transmitter antennas are used, but without incurring a substantial penalty in the number of codes that must be assigned per user.
We have discovered such a scheme.
To illustrate our scheme, we first discuss a case in which, as above, our simplified model applies, there are two transmitter antennas and two users, and the data symbols to be transmitted are real-valued. (As noted, there are no multipath effects in our simplified model. As discussed below, our scheme is readily extended to apply to multipath propagation environments.)
With reference to FIG. 3, antenna 1 (denoted by reference numeral 25.1) transmits the signal             (              1                  2                    )        ⁢          xe2x80x83        ⁢          (                                    b            1                    ⁢                      xe2x80x83                    ⁢                      c            1                          +                              b            2                    ⁢                      xe2x80x83                    ⁢                      c            2                              )        ,
and antenna 2 (denoted by reference numeral 25.2) transmits the signal       (          1              2              )    ⁢      xe2x80x83    ⁢            (                                    b            2                    ⁢                      xe2x80x83                    ⁢                      c            1                          -                              b            1                    ⁢                      xe2x80x83                    ⁢                      c            2                              )        .  
Thus, only two spreading codes are used, but both codes are used for the data symbol destined for user 1, and both codes are also used for the data symbol destined for user 2. (The users are respectively denoted in the figure by reference numerals 20.1 and 20.2.) User k despreads the received signals, using each of the respective spreading codes, to obtain received signals dk(1) and dk(2), given by             d      k              (        1        )              =                            (                      1                          2                                )                ⁢                  xe2x80x83                ⁢                  (                                                    h                1                                  (                  k                  )                                            ⁢                              xe2x80x83                            ⁢                              b                1                                      +                                          h                2                                  (                  k                  )                                            ⁢                              xe2x80x83                            ⁢                              b                2                                              )                    +                        c          1          xe2x80xa0                ⁢                  xe2x80x83                ⁢        n              ,      xe2x80x83    ⁢      
    ⁢            d      k              (        2        )              =                            (                      1                          2                                )                ⁢                  xe2x80x83                ⁢                  (                                                    -                                  h                  2                                      (                    k                    )                                                              ⁢                              xe2x80x83                            ⁢                              b                1                                      +                                          h                1                                  (                  k                  )                                            ⁢                              xe2x80x83                            ⁢                              b                2                                              )                    +                        c          2          xe2x80xa0                ⁢                  xe2x80x83                ⁢                  n          .                    
Let dk and {right arrow over (xcexd)} be defined as above, and let the fading coefficients be gathered into a matrix H according to:   H  =            [                                                  h              1                                                          h              2                                                                          -                              h                2                                                                        h              1                                          ]        .  
To simplify the notation, the superscript (k) is dropped here, and in the rest of this discussion. Let the k""th column of H be denoted {right arrow over (h)}k, k=1, 2, and let the k""th row of Hxe2x80xa0 be denoted {right arrow over (h)}kxe2x80xa0, k=1, 2. Then to recover the symbol bk, k=1, 2, from the received signal vector dk, the receiver left-multiplies dk by the conjugate transpose of {right arrow over (h)}k, and takes the real part of the result:       Re    ⁢          xe2x80x83        ⁢          (                                    h                          →              xe2x80xa0                                k                ⁢                  xe2x80x83                ⁢                  d          k                    )        =                    (                  1                      2                          )            ⁢              xe2x80x83            ⁢              (                                            "LeftBracketingBar"                              h                1                            "RightBracketingBar"                        2                    +                                    "LeftBracketingBar"                              h                2                            "RightBracketingBar"                        2                          )            ⁢              xe2x80x83            ⁢              b        k              +          Re      ⁢              xe2x80x83            ⁢                        (                                                    h                                  →                  xe2x80xa0                                            k                        ⁢                          xe2x80x83                        ⁢                          v              →                                )                .            
The symbol bk is then ready for hard or soft decoding, according to well-known techniques of CDMA signal processing.
In FIG. 3, symbol recovery using the first row of Hxe2x80xa0 is represented by blocks 30.1 and 35.1, and symbol recovery using the second row of Hxe2x80xa0 is represented by blocks 30.2 and 35.2.
We have described a two-fold diversity coding scheme in which a given user does not need to know the symbol destined for any other user. User k despreads the raw received signal using each of spreading codes c1 and c2, left-multiplies the despread signal vector by the k""th row of Hxe2x80xa0, and takes the real part of the resulting scalar. One advantage of this scheme is that no extra spreading codes are required. (As will be seen, however, certain extensions of this scheme may require a set of spreading codes that is larger than the corresponding set of users.)
The scheme described above is readily extended to serve K users, K an even number greater than 2. Form K/2 pairs of users, such that user k is paired with user k+1, k=1, 3, 5, . . . , Kxe2x88x921. On antenna 1, transmit the signal                     1                  2                    ⁢                        ∑                      k            =            1                                K            /            2                          ⁢                  xe2x80x83                ⁢                  (                                                    b                                                      2                    ⁢                    k                                    -                  1                                            ⁢                              c                                                      2                    ⁢                    k                                    -                  1                                                      +                                          b                                  2                  ⁢                  k                                            ⁢                              c                                  2                  ⁢                  k                                                              )                      =                  1                  2                    ⁢                        ∑                      k            =            1                    K                ⁢                  xe2x80x83                ⁢                              b            k                    ⁢                      c            k                                ,
and on antenna 2, transmit the signal       1          2        ⁢            ∑              k        =        1                    K        /        2              ⁢          xe2x80x83        ⁢                  (                                            b                              2                ⁢                k                                      ⁢                          c                                                2                  ⁢                  k                                -                1                                              -                                    b                                                2                  ⁢                  k                                -                1                                      ⁢                          c                              2                ⁢                k                                                    )            .      
Each mobile user despreads the incoming signal with the two spreading codes that it shares with the companion that has been paired with it. The processing of the despread signals is as described above.
The schemes described apply when there are two transmitter antennas, there are two users per user group, and the data symbols bk are real-valued. In fact, our technique can be extended to apply to greater numbers of transmitter antennas, and to groups of more than two users. Our technique can also be extended to apply when the data symbols are complex-valued. We will describe such extensions below.
It should be noted that we are assuming, for the time being, that there is only one effective path from each transmitting antenna to each user. As will be seen, our approach is readily extended to the case of multiple paths, typically associated with delay spread, from each antenna to each user.
Thus, in one broad aspect, our invention involves a method for CDMA transmission of sets of data symbols to users that are organized into one or more user groups. Each user group is paired with a group of spreading codes, referred to as a xe2x80x9ccode group.xe2x80x9d Each set of data symbols that are destined for respective users of a given user group is transmitted in the form of two or more distinct signal sequences. Each such signal sequence is transmitted from a respective one of two or more transmitting antennas. Each signal sequence is a linear combination of spreading code sequences belonging to the corresponding code group. Within each of these linear combinations, each spreading code sequence that appears has a scalar coefficient. Each of these scalar coefficients is a linear combination of pertinent data symbols (i.e., data symbols destined for users in the given user group) or of complex conjugates of pertinent data symbols.
In a second broad aspect, our invention involves a method for CDMA reception of data symbols belonging to such sets. A user belonging to a given user group despreads a received signal sequence using each spreading code sequence in the code group paired with the given user group. A linear combination is formed of the resulting, respective despread scalar signal values. Each scalar signal value in this linear combination has a scalar coefficient. Each of these scalar coefficients is a linear combination of fading coefficients or of complex conjugates of fading coefficients. The result of this sequence of operations is proportional to the desired data symbol.